package jdbc;

import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

/**
 * 用户登录功能
 * 程序启动后要求用户输入用户名和密码。
 * 然后比对userinfo表中是否存在该用户，如果匹配则提示登录成功
 * 否则提示:用户名或密码不正确
 * 登录逻辑:只有用户名密码都正确才算登录成功
 */
public class LoginDemo {
    public static void main(String[] args) {
        UserInfo userInfo = InputUtil.getInputObject(new UserInfo(),"欢迎登录","登录");// 获取用户输入

        try (
                Connection connection = DButil.getConnection();// 获取数据库连接
        ){
            Statement statement = connection.createStatement();// 创建Statement对象
            String sql = "SELECT id,username,password,nickname,age " +
                    "FROM userinfo " +
                    "WHERE username='"+userInfo.getUsername()+"' AND password='"+userInfo.getPassword()+"'";
            ResultSet rs = statement.executeQuery(sql);// 执行查询
            if(rs.next()){// 判断是否匹配
                System.out.println("登录成功，欢迎你:"+rs.getString("nickname"));
            }else{
                System.out.println("登录失败，用户名或密码不正确");
            }


        } catch (SQLException e) {
            e.printStackTrace();
        }


    }
}
